Goals

<#4773#> <#89#>Portable<#89#>
Applications which use CLUE should be easily portable to any hardware/software environment which provides an implementation of CLUE and CLX[#clx##1###], the Common Lisp programmer's interface to the X Window System. CLUE itself should be a portable software system written in Common Lisp[#cltl##1###].
<#95#>Flexible<#95#>
CLUE is intended to support the development of a wide variety of user interface styles. In particular, it should be possible to use CLUE to implement any of the user interfaces found in current Lisp development environments. Both graphical and textual interfaces should be easy to create. In order to achieve this goal, CLUE is ``policy-free''. That is, decisions about user interface style --- the look, feel, consistency, and techniques of the interface --- are left to the user interface programmer.
<#98#>Extensible<#98#>
CLUE should provide the ability to define and deploy new types of user interface objects which refine and extend the behavior of more basic object types. CLUE provides this ability through the methodology of object-oriented programming.
<#101#>Modular<#101#>
CLUE should comprise a well-defined and self-sufficient layer of the user interface programming system. Using CLUE, an application programmer should be able to implement most types of user interfaces without accessing underlying software layers and without knowledge of the implementation internals of CLUE objects.
<#104#>Compatible<#104#>
CLUE must be compatible with related software systems which will be separately standardized. CLUE is based on the X Window System which, because of its wide distribution and broad support, constitutes a <#107#>de facto<#107#> standard10.1. CLUE should be consistent with future Common Lisp standards for object-oriented programming. Therefore, CLUE is based on the proposed Common Lisp Object System (CLOS) [#clos##1###].
=0 <#4779#>=0 <#4783#>